# 使用Node.js的基础镜像
FROM node:latest AS base
WORKDIR /app

# 安装生产环境依赖项
FROM base AS builder
COPY package*.json ./
RUN npm install --only=production

# 复制源代码
COPY . .

# 构建应用
RUN npm run build

# 使用基础镜像来运行应用
FROM base
EXPOSE 3000

# 将构建好的文件复制到镜像中
COPY --from=builder /app/dist ./dist
COPY --from=builder /app/nuxt.config.js ./nuxt.config.js
COPY --from=builder /app/package*.json ./

# 安装基本依赖项
RUN apk add --no-cache bash

# 安装npm包（如果包含生产环境之外的依赖项）
RUN npm install

# 运行Nuxt.js应用
CMD ["npm", "start"]